// 订单详情页面
Page({
  data: {
    // 开关状态
    showCarInfo: true,
    showBuyerInfo: false,
    
    // 订单详情数据
    orderDetail: {
      // 车辆信息
      carInfo: {
        name: '特斯拉-Model 3 2022款后轮驱动版',
        bodyColor: '珍珠白车漆',
        interiorColor: '白色',
        price: '26.18',
        image: 'https://images.unsplash.com/photo-1549317661-bd32c8ce0db2?w=400&h=300&fit=crop'
      },
      
      // 订单信息
      orderNo: '20220803145211',
      createTime: '2022-08-02 17:01:20',
      paidDeposit: '2,000.00',
      payTime: '2022-08-02 17:09:20',
      deposit: '2,000.00',
      
      // 订单状态
      status: 'waiting_payment', // waiting_payment: 待付全款, paid: 已支付, cancelled: 已取消
      statusText: '待付全款'
    }
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    console.log('订单详情页面加载', options);
    
    // 获取订单ID
    const orderId = options.id || options.orderId;
    if (orderId) {
      this.loadOrderDetail(orderId);
    }
  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {
    console.log('订单详情页面显示');
  },

  /**
   * 加载订单详情
   */
  loadOrderDetail: function(orderId) {
    // 模拟从服务器获取订单详情
    wx.showLoading({
      title: '加载中...'
    });

    setTimeout(() => {
      // 这里可以根据orderId从服务器获取具体订单信息
      // 目前使用模拟数据
      const orderDetail = this.data.orderDetail;
      
      // 如果有传入的订单信息，可以在这里处理
      // 例如从全局数据或本地存储获取
      try {
        const orderInfo = wx.getStorageSync(`order_${orderId}`);
        if (orderInfo) {
          // 合并订单信息
          Object.assign(orderDetail, orderInfo);
        }
      } catch (error) {
        console.error('获取订单信息失败:', error);
      }
      
      this.setData({
        orderDetail: orderDetail
      });
      
      wx.hideLoading();
    }, 500);
  },

  /**
   * 切换车辆信息显示
   */
  toggleCarInfo: function(e) {
    this.setData({
      showCarInfo: e.detail.value
    });
  },

  /**
   * 切换购车人信息显示
   */
  toggleBuyerInfo: function(e) {
    this.setData({
      showBuyerInfo: e.detail.value
    });
  },

  /**
   * 返回上一页
   */
  goBack: function() {
    wx.navigateBack({
      delta: 1
    });
  },

  /**
   * 联系客服
   */
  contactService: function() {
    wx.showActionSheet({
      itemList: ['在线客服', '电话咨询', '微信客服'],
      success: (res) => {
        switch(res.tapIndex) {
          case 0:
            // 在线客服
            wx.showToast({
              title: '正在连接客服...',
              icon: 'loading',
              duration: 1500
            });
            break;
          case 1:
            // 电话咨询
            wx.makePhoneCall({
              phoneNumber: '400-123-4567',
              fail: () => {
                wx.showToast({
                  title: '拨号失败',
                  icon: 'none'
                });
              }
            });
            break;
          case 2:
            // 微信客服
            wx.showModal({
              title: '微信客服',
              content: '请添加微信号：CarDealer2024\n工作时间：9:00-18:00',
              confirmText: '复制微信号',
              success: (modalRes) => {
                if (modalRes.confirm) {
                  wx.setClipboardData({
                    data: 'CarDealer2024',
                    success: () => {
                      wx.showToast({
                        title: '微信号已复制',
                        icon: 'success'
                      });
                    }
                  });
                }
              }
            });
            break;
        }
      }
    });
  },

  /**
   * 支付尾款
   */
  payBalance: function() {
    const orderDetail = this.data.orderDetail;
    
    wx.showModal({
      title: '支付确认',
      content: `确定要支付车辆尾款吗？\n车辆：${orderDetail.carInfo.name}\n金额：￥${orderDetail.carInfo.price}万`,
      confirmText: '确认支付',
      success: (res) => {
        if (res.confirm) {
          // 模拟支付流程
          wx.showLoading({
            title: '支付中...'
          });
          
          setTimeout(() => {
            wx.hideLoading();
            wx.showToast({
              title: '支付成功',
              icon: 'success',
              duration: 2000
            });
            
            // 更新订单状态
            this.setData({
              'orderDetail.status': 'paid',
              'orderDetail.statusText': '已支付'
            });
          }, 2000);
        }
      }
    });
  },

  /**
   * 取消订单
   */
  cancelOrder: function() {
    wx.showModal({
      title: '取消订单',
      content: '确定要取消这个订单吗？定金将原路退回。',
      confirmText: '确认取消',
      confirmColor: '#ff4757',
      success: (res) => {
        if (res.confirm) {
          wx.showLoading({
            title: '处理中...'
          });
          
          setTimeout(() => {
            wx.hideLoading();
            wx.showToast({
              title: '订单已取消',
              icon: 'success'
            });
            
            // 更新订单状态
            this.setData({
              'orderDetail.status': 'cancelled',
              'orderDetail.statusText': '已取消'
            });
          }, 1000);
        }
      }
    });
  },

  /**
   * 查看车辆详情
   */
  viewCarDetail: function() {
    // 假设车辆ID为1，实际应该从订单数据中获取
    wx.navigateTo({
      url: '/pages/car-detail/car-detail?id=1'
    });
  },

  /**
   * 分享订单
   */
  onShareAppMessage: function() {
    const orderDetail = this.data.orderDetail;
    return {
      title: `我预订了${orderDetail.carInfo.name}`,
      path: `/pages/order-detail/order-detail?id=${orderDetail.orderNo}`,
      imageUrl: orderDetail.carInfo.image
    };
  },

  /**
   * 分享到朋友圈
   */
  onShareTimeline: function() {
    const orderDetail = this.data.orderDetail;
    return {
      title: `我在二手车平台预订了${orderDetail.carInfo.name}`
    };
  }
});
